/**
 * 
 * @since  2009/3/3
 * @author ashen
 * 
 * Description: 处理管理员对权限级别的操作。
 * 
 */

	
	var Role={
		
		//添加权限级别表单地址
 		$formUrl: "adminPage/addRole.jsp",
		
		//存储返回的XML文件
		$resultXml: "",
		
		//显示资源管理界面
		show : function(){			
			$.get(AdminDo.host+"admin/role/show"+"?random="+Math.random(),
				function(data){
				Role.loadForm();
				Role.$resultXml=$(data).find("rolelist");
				var html="<table><th>权限级别</th><tr><td>ID</td><td>名称</td>";
				html+="<td>描述</td><td>操作</td></tr>";
				Role.$resultXml.find("list > *").each(function(){										
					html+="<tr><td>"+$(this).attr("id")+"</td>";
					html+="<td>"+$(this).find("> name").text()+"</td>";
					html+="<td>"+$(this).find("> description").text()+"</td>";
					html+="<td id=\""+$(this).attr("id")+"\">";
					html+="<a class=\"deleteRole\">删除</a>";
					html+="<a class=\"setOperations\">设置权限</a></td></tr>";					
				});
				html+="</table>";
				$(AdminDo.$sectionRoot).html(html);
				$(".deleteRole").click(Role.deleteRole);
				$(".setOperations").click(Privilege.firstShow);
			});			
		},
		
		//加载增加资源类型的表单
		loadForm : function(){
			$(AdminDo.$sectionRoot).empty();
 			$.get(AdminDo.host+Role.$formUrl+"?random="+Math.random(),
 				function(result){				 			
	    			$(AdminDo.$sectionRoot).append($(result));
	    			FormDo.initForm();
	    			$('form').submit(Role.checkForm);
			});
		},
		
		doAdd:function(){
			var $name =$('input[@name="roleName"]').val();
			var $description = $('textArea[@name="description"]').val();
			$(AdminDo.$sectionRoot).empty();
			$.post(AdminDo.host + "admin/role/add",
				{	name : $name,
					description : $description
				},
				function(data) {
					Role.show();
					$(AdminDo.$sectionRoot).append($(data));
			});		
		},
		
		//检查表单输入的有效性
		checkForm : function(){
			FormDo.checkForm();	
			if(FormDo.getWarnings()){
				$('.msg').show();
				return false;
			}else{
				Role.doAdd();	
				return true;				
			}
		},
		
		//删除权限级别
		deleteRole : function(event) {
			var roleId=$(event.target).parent().attr("id");
			$.ajax({
				type: "DELETE",
				url: AdminDo.host + "admin/role/delete/"+roleId,
				success: function(data){
					//返回资源类型管理界面
					Role.show();
					$(AdminDo.$sectionRoot).append($(data));		
				}
			});
		}
	};
	
	
	